Steps to create problem:
1) Switch to Exclusive Edit
2) Run DXL script that (amongst other things) creates a new Attribute using a new enumerated AttrType
3) Add a new column for the new enumerated Attribute to the current view
4) Add a new column for a previously existing text Attribute to the current view
5) Switch to Read-Only
6) Elect not to save the changes
Result: the attached diagnostic log.
If I miss steps 3 and/or 4, or do them in the opposite order, all is fine. If I subsequently drag the column to be the rightmost column, all is fine. If I select a different existing integer Attribute at step 4, all is fine. If I select a different existing text Attribute at step 4, DOORS still crashes.
Can anyone advise how I can stop this happening, should another user accidentally follow the steps above?
Dangthrimble - Fri Mar 11 06:47:52 EST 2011 |
|
Re: EXCEPTION_ACCESS_VIOLATION when not saving on switching to Read-Only Dangthrimble - Fri Mar 11 06:51:03 EST 2011
I was wrong about it not crashing with an integer Attribute. In that case, DOORS just disappears after a period without any diagnostic log!
|
|
Re: EXCEPTION_ACCESS_VIOLATION when not saving on switching to Read-Only Mathias Mamsch - Sat Mar 12 04:47:42 EST 2011
We had a script once with a bug, that would render DOORS unstable, which also created an attribute. It did not crash immediately, however one tried to start the attribute dialog DOORS crashed. I bet that there is an issue with the DXL scriptyou used. Can you post it? Regards, Mathias
Mathias Mamsch, IT-QBase GmbH, Consultant for Requirement Engineering and D00RS
|
|
Re: EXCEPTION_ACCESS_VIOLATION when not saving on switching to Read-Only Mathias Mamsch - Sat Mar 12 07:43:45 EST 2011 Mathias Mamsch - Sat Mar 12 04:47:42 EST 2011
We had a script once with a bug, that would render DOORS unstable, which also created an attribute. It did not crash immediately, however one tried to start the attribute dialog DOORS crashed. I bet that there is an issue with the DXL scriptyou used. Can you post it? Regards, Mathias
Mathias Mamsch, IT-QBase GmbH, Consultant for Requirement Engineering and D00RS
I found the code with the rather innocent looking code, that will make DOORS so unstable that it will crash (but not in the code, just afterwards).
See here
Regards, Mathias
Mathias Mamsch, IT-QBase GmbH, Consultant for Requirement Engineering and D00RS
|
|
Re: EXCEPTION_ACCESS_VIOLATION when not saving on switching to Read-Only Dangthrimble - Mon Mar 21 05:30:21 EDT 2011 Mathias Mamsch - Sat Mar 12 07:43:45 EST 2011
I found the code with the rather innocent looking code, that will make DOORS so unstable that it will crash (but not in the code, just afterwards).
See here
Regards, Mathias
Mathias Mamsch, IT-QBase GmbH, Consultant for Requirement Engineering and D00RS
Attached is the code, though it has developed somewhat since my original post, the problem still occurs. This is my first attempt at DXL, so please be gentle with me!
As a quick overview, the script is intended to provide the ability to add cross-references to Object Text. The cross-references can be to Figures, Tables, DOORS Sections or Reference Documents. Hopefully it is commented sufficiently for you to be able to follow what it does, as well as why and how it does it.
Thanks,
Jonathan
Attachments
attachment_14596489_UpdateReferences.dxl
|
|
Re: EXCEPTION_ACCESS_VIOLATION when not saving on switching to Read-Only Mathias Mamsch - Mon Mar 21 06:21:43 EDT 2011 Dangthrimble - Mon Mar 21 05:30:21 EDT 2011
Attached is the code, though it has developed somewhat since my original post, the problem still occurs. This is my first attempt at DXL, so please be gentle with me!
As a quick overview, the script is intended to provide the ability to add cross-references to Object Text. The cross-references can be to Figures, Tables, DOORS Sections or Reference Documents. Hopefully it is commented sufficiently for you to be able to follow what it does, as well as why and how it does it.
Thanks,
Jonathan
Hmm... Cannot reproduce the error on my side. When I do as you described the newly created attribute columns vanish from the view and the modules goes to read only without any crashes.
The script is too long for me to spot an error right on the first view. Are you getting a DXL traceback, which tells you where the exception occurs (or just the exception)? This would be extremly helpful in determining the reason for the exception.
So some questions:
-
Are there any Triggers on the module which could interfere (e.g. onclose/onopen trigger) and maybe make the module crash? (Try getting the same effect on a module, without any triggers applying)
-
Are there DXL layout columns in the view or DXL attributes in the module which could interfere (and crash the module)? (Make sure you try this with a newly created module without any Layouts / DXL Attributes)
Regards, Mathias
Mathias Mamsch, IT-QBase GmbH, Consultant for Requirement Engineering and D00RS
|
|
Re: EXCEPTION_ACCESS_VIOLATION when not saving on switching to Read-Only Dangthrimble - Mon Mar 21 10:01:46 EDT 2011 Mathias Mamsch - Mon Mar 21 06:21:43 EDT 2011
Hmm... Cannot reproduce the error on my side. When I do as you described the newly created attribute columns vanish from the view and the modules goes to read only without any crashes.
The script is too long for me to spot an error right on the first view. Are you getting a DXL traceback, which tells you where the exception occurs (or just the exception)? This would be extremly helpful in determining the reason for the exception.
So some questions:
-
Are there any Triggers on the module which could interfere (e.g. onclose/onopen trigger) and maybe make the module crash? (Try getting the same effect on a module, without any triggers applying)
-
Are there DXL layout columns in the view or DXL attributes in the module which could interfere (and crash the module)? (Make sure you try this with a newly created module without any Layouts / DXL Attributes)
Regards, Mathias
Mathias Mamsch, IT-QBase GmbH, Consultant for Requirement Engineering and D00RS
The backtrace from the DXL output is:
-R-E- DXL: <config/menuFns.inc:374> An unexpected error has occurred: doors.exe caused an EXCEPTION_ACCESS_VIOLATION in module doors.exe at 0023:004AD3EF
Backtrace:
<wizard/welcome/welcomewiz.dxl:702>
<Line:1>
-R-F- DXL: <config/menuFns.inc:374> internal error, please submit a bug report
Backtrace:
<wizard/welcome/welcomewiz.dxl:702>
<Line:1>
and the Diagnostic Log contains:
DOORS: **** Translating a structured exception ****
DOORS: Version 9.2.0.5, build number 92531, built on Aug 25 2010 10:45:49.
DOORS: Server Service Pack 2 (Build 3790)
DOORS: DOORS: 21 percent of memory is in use.
DOORS: There are 4194303 total Kbytes of physical memory.
DOORS: There are 4194303 free Kbytes of physical memory.
DOORS: There are 4194303 total Kbytes of paging file.
DOORS: There are 4194303 free Kbytes of paging file.
DOORS: There are 1fff80 total Kbytes of virtual memory.
DOORS: There are 1bb80c free Kbytes of virtual memory.
DOORS: argv[0]: n:\program files (x86)\ibm\rational\doors\9.2\bin\doors.exe
DOORS: argv[1]: -localdata
DOORS: argv[2]: n:\program files (x86)\ibm\rational\doors\9.2\temp
DOORS: doors.exe caused an EXCEPTION_ACCESS_VIOLATION in module doors.exe at 0023:004AD3EF
DOORS: 0023:004AD3EF (0x0013EAA4 0x0013EAF0 0x06E1DDB0 0x014EF890) doors.exe
DOORS: 0023:00737BF9 (0x0013EAF0 0x0013EB14 0x7C021A6F 0x06E1DEBC) doors.exe
DOORS: 0023:00A2D030 (0x06E1DDB0 0x0A311D50 0x0A83ADEC 0x004FA43E) doors.exe
DOORS: 0023:0055EE6E (0x00000285 0x00000018 0x00000018 0x000000A0) doors.exe
DOORS: 0023:004FE707 (0x65522000 0x00000000 0x6E656D65 0x00007374) doors.exe
DOORS: **** end of event ****
The version of DOORS I am using is:
Client version: 9.2.0.5
Home directory: N:\Program Files (x86)\IBM\Rational\DOORS\9.2\
Build number: 92531
Build date: Wednesday, August 25, 2010 10:45:49 AM
I am not aware of any Triggers on the module (how would I find out?) and I am starting with what is called "Standard view", i.e. ID and text.
Thanks,
Jonathan
|
|
Re: EXCEPTION_ACCESS_VIOLATION when not saving on switching to Read-Only llandale - Mon Mar 21 10:23:57 EDT 2011
The diagnostic log itself is not useful, except maybe to 3 people in the world but I'm not one. The DXL errors are more useful, but in this case its in an encrypted file.
-R-E- DXL: <config/menuFns.inc:374> An unexpected error has occurred: doors.exe caused an EXCEPTION_ACCESS_VIOLATION in module doors.exe at 001B:007149EE
Backtrace from <standard/object/properties.dxl:604>
I see the rest of the thread. using v9.2.0.1 I've duplicated your symptoms with your DXL, but more importantly also by manually creating an enumerated attribute type and def. Adding to the view and not saving. So, it does not appear your DXL is at fault (EXCEPT in function updateReferableObjects() you fail to declare variable childObject used at lines 659 and 706; gads that just chaps my hide...).
This is a bug and I really cannot track it down since I lack the un-encrypted version of those include files. Anyway, like the doctor said "Don't do that".
|
|
Re: EXCEPTION_ACCESS_VIOLATION when not saving on switching to Read-Only Dangthrimble - Mon Mar 21 10:37:28 EDT 2011 llandale - Mon Mar 21 10:23:57 EDT 2011
The diagnostic log itself is not useful, except maybe to 3 people in the world but I'm not one. The DXL errors are more useful, but in this case its in an encrypted file.
-R-E- DXL: <config/menuFns.inc:374> An unexpected error has occurred: doors.exe caused an EXCEPTION_ACCESS_VIOLATION in module doors.exe at 001B:007149EE
Backtrace from <standard/object/properties.dxl:604>
I see the rest of the thread. using v9.2.0.1 I've duplicated your symptoms with your DXL, but more importantly also by manually creating an enumerated attribute type and def. Adding to the view and not saving. So, it does not appear your DXL is at fault (EXCEPT in function updateReferableObjects() you fail to declare variable childObject used at lines 659 and 706; gads that just chaps my hide...).
This is a bug and I really cannot track it down since I lack the un-encrypted version of those include files. Anyway, like the doctor said "Don't do that".
I humbly apologise for my heinous crime. To the best of my knowledge I have little (i.e. no) control over my DOORS environment and have no idea how to modify ‘$DOORSHOME/lib/dxl/startup.dxl’ to include ‘XFLAGS_ &=~AutoDeclare_’ (if someone could advise, it would be much appreciated). I presume that would have flagged up my misdemeanour and allowed me to keep it to myself. I will modify the script forthwith, though my crime is now exposed for all to see.
I do, however, feel somewhat vindicated to know that the underlying problem does not lie in my code. For that, I am forever in your debt.
Thanks,
Jonathan
|
|
Re: EXCEPTION_ACCESS_VIOLATION when not saving on switching to Read-Only Mathias Mamsch - Mon Mar 21 10:57:17 EDT 2011 llandale - Mon Mar 21 10:23:57 EDT 2011
The diagnostic log itself is not useful, except maybe to 3 people in the world but I'm not one. The DXL errors are more useful, but in this case its in an encrypted file.
-R-E- DXL: <config/menuFns.inc:374> An unexpected error has occurred: doors.exe caused an EXCEPTION_ACCESS_VIOLATION in module doors.exe at 001B:007149EE
Backtrace from <standard/object/properties.dxl:604>
I see the rest of the thread. using v9.2.0.1 I've duplicated your symptoms with your DXL, but more importantly also by manually creating an enumerated attribute type and def. Adding to the view and not saving. So, it does not appear your DXL is at fault (EXCEPT in function updateReferableObjects() you fail to declare variable childObject used at lines 659 and 706; gads that just chaps my hide...).
This is a bug and I really cannot track it down since I lack the un-encrypted version of those include files. Anyway, like the doctor said "Don't do that".
So if you are able to replicate it in DOORS 9.2.0.1 the bug seems to have been introduced at 9.2.0.1 since on 9.2.0.0 or 8.2 I am not able reproduce it. Regards, Mathias
Mathias Mamsch, IT-QBase GmbH, Consultant for Requirement Engineering and D00RS
|
|
Re: EXCEPTION_ACCESS_VIOLATION when not saving on switching to Read-Only llandale - Mon Mar 21 11:50:48 EDT 2011 Dangthrimble - Mon Mar 21 10:37:28 EDT 2011
I humbly apologise for my heinous crime. To the best of my knowledge I have little (i.e. no) control over my DOORS environment and have no idea how to modify ‘$DOORSHOME/lib/dxl/startup.dxl’ to include ‘XFLAGS_ &=~AutoDeclare_’ (if someone could advise, it would be much appreciated). I presume that would have flagged up my misdemeanour and allowed me to keep it to myself. I will modify the script forthwith, though my crime is now exposed for all to see.
I do, however, feel somewhat vindicated to know that the underlying problem does not lie in my code. For that, I am forever in your debt.
Thanks,
Jonathan
Do 3 "Hail Marys". Wait, its lent ... do 4.
As I've said before, Autodeclare is about as a pistol that conveniently turns off the safety when you pick it up. This appears to be a minority opinion.
If you cannot edit the startup.dxl file here:
... c:\Program Files\IBM\Rational\DOORS\9.2\lib\dxl\startup.dxl
Then try to create a simple file perhaps "AutoDeclareOff.dxl" and put it here:
... C:\Program Files\IBM\Rational\DOORS\9.2\lib\dxl\startupFiles\
containing this one line:
...XFLAGS_ &=~AutoDeclare_ // Turn it OFF
Mental note to self: Dangthrimble is thin skinned and I should PM critiques... lol
|
|